package com.yb.xczx.cloud.auth.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.time.LocalDateTime;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;
import lombok.experimental.Accessors;

/**
 * <p>
 * 
 * </p>
 *
 * @author 姚兵
 * @since 2023-05-17
 */
@Getter
@Setter
@Accessors(chain = true)
@TableName("oauth2_authorization")
@ApiModel(value = "Oauth2Authorization对象", description = "")
public class Oauth2Authorization {

    @TableId("id")
    private String id;

    @TableField("registered_client_id")
    private String registeredClientId;

    @TableField("principal_name")
    private String principalName;

    @TableField("authorization_grant_type")
    private String authorizationGrantType;

    @TableField("authorized_scopes")
    private String authorizedScopes;

    @TableField("attributes")
    private String attributes;

    @TableField("state")
    private String state;

    @TableField("authorization_code_value")
    private String authorizationCodeValue;

    @TableField("authorization_code_issued_at")
    private LocalDateTime authorizationCodeIssuedAt;

    @TableField("authorization_code_expires_at")
    private LocalDateTime authorizationCodeExpiresAt;

    @TableField("authorization_code_metadata")
    private String authorizationCodeMetadata;

    @TableField("access_token_value")
    private String accessTokenValue;

    @TableField("access_token_issued_at")
    private LocalDateTime accessTokenIssuedAt;

    @TableField("access_token_expires_at")
    private LocalDateTime accessTokenExpiresAt;

    @TableField("access_token_metadata")
    private String accessTokenMetadata;

    @TableField("access_token_type")
    private String accessTokenType;

    @TableField("access_token_scopes")
    private String accessTokenScopes;

    @TableField("refresh_token_value")
    private String refreshTokenValue;

    @TableField("refresh_token_issued_at")
    private LocalDateTime refreshTokenIssuedAt;

    @TableField("refresh_token_expires_at")
    private LocalDateTime refreshTokenExpiresAt;

    @TableField("refresh_token_metadata")
    private String refreshTokenMetadata;

    @TableField("oidc_id_token_value")
    private String oidcIdTokenValue;

    @TableField("oidc_id_token_issued_at")
    private LocalDateTime oidcIdTokenIssuedAt;

    @TableField("oidc_id_token_expires_at")
    private LocalDateTime oidcIdTokenExpiresAt;

    @TableField("oidc_id_token_metadata")
    private String oidcIdTokenMetadata;

    @TableField("oidc_id_token_claims")
    private String oidcIdTokenClaims;


}
